home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1994 June: Reference Library / Dev.CD Jun 94.toast / Technical Documentation / Inside Macintosh / IM—QuickDraw GX ß3 / Environment & Utilities / Environment & Utilities.rsrc / TOC#_1000 < prev   
Encoding:
Text File  |  1994-04-27  |  25.4 KB  |  15 lines

  1. ¸(QuickDraw GX 
  2. Environment and Utilities
  3. ContentsFigures, Tables, and ListingsAbout This Book*QuickDraw GX and the Macintosh Environment0About QuickDraw GX and the Macintosh EnvironmentThe Macintosh Toolbox Interface(The QuickDraw to QuickDraw GX Translator0
  4. Using QuickDraw GX in the Macintosh Environment5Testing for the Presence and Version of QuickDraw GX 4Listing 1-1    Determining the QuickDraw GX environment'Using the Macintosh Interface FunctionsCreating and Using View PortsUsing Graphics Devices5Converting from QuickDraw to QuickDraw GX CoordinatesXFigure 1-1    Converting from QuickDraw global to QuickDraw GX local and global coordinates;Obtaining Mouse Location in QuickDraw GX Global Coordinates<Obtaining Mouse Location in Local Coordinates of a View PortIntercepting View Port Calls*Translating from QuickDraw to QuickDraw GXScaling the Translation%Table 1-1    Translation scaling factorsUsing Translation Options0Table 1-2    Translation option settings(continued)Using Translation Statistics3Table 1-3    Translation statistics options(continued)0Translating with an Application-defined FunctionTranslating with picComments'Listing 1-2    Sample Code of a picComment+Figure 1-2    Output of picComment Sample CodeTranslating Fill PatternsJFigure 1-3    Translator conversion of some QuickDraw fill patterns to blends$Translating Lines Using Option Flags0Listing 1-3    QuickDraw Commands for a Simple Line"Figure 1-4    Original QuickDraw line`Figure 1-5    Translation of the original QuickDraw line using the gxDefaultOptionsTranslation flag`Figure 1-6    Translation of the original QuickDraw line using the gxSimpleGeometryTranslation flagbFigure 1-7    Translation of the original QuickDraw line using the gxReplaceLineWidthTranslation flag'Installing and Removing the Translator JListing 1-4    Sample code for GXInstallQDTranslator and GXRemoveQDTranslator^Figure 1-8    Translation of QuickDraw lines using GXInstallQDTranslator and GXRemoveQDTranslator4Converting QuickDraw Pictures to QuickDraw GX Shapes?Listing 1-5    Sample code using the function GXConvertPICTToShape4QuickDraw GX and the Macintosh Environment ReferenceConstants and Data TypesGestalt Selectors!Translator Options and Statistics    FunctionsMacintosh Interface FunctionsGXConvertQDPointGXGetGlobalMouseGXGetViewPortMouseGXNewWindowViewPortGXGetViewPortWindowGXGetWindowViewPortGXGetViewDeviceGDeviceGXGetGDeviceViewDeviceGXSetViewPortFilterGXGetViewPortFilter$QuickDraw to QuickDraw GX TranslatorGXInstallQDTranslatorGXRemoveQDTranslatorGXConvertPICTToShape6
  5. Summary of QuickDraw GX and the Macintosh EnvironmentQuickDraw GX Memory Management0About Graphics Clients and Graphics Client Heaps0Using Graphics Clients and Graphics Client Heaps7Creating a Graphics Client and its Graphics Client HeapUsing Implicit CallsUsing Explicit CallsJListing 2-1    Creating a graphics client and graphics client heap explicitlyUsing a 'gasz' Resource&Listing 2-2    Creating a ‘gasz’ resource:Determining Memory Requirements for a Graphics Client Heap7Disposing of a Graphics Client and Graphics Client HeapCListing 2-3    Disposing of graphics clients and graphics client heaps"
  6. Advanced Memory Management Topics#Responding to Low-Memory ConditionsLoading and Unloading Objects7Working with Graphics Clients and Graphics Client Heaps7Functions That Do Not Require a Graphics Client or HeapNTable 2-1    QuickDraw GX functions that do not require a graphics client or heap5Specifying the Starting Location of a Graphics ClientVListing 2-4    Specifying a starting location and size for a graphics client and its heapPFigure 2-1    Creating a graphics client by specifying the memory starting location&Working with Multiple Graphics Clients(QuickDraw GX Memory Management ReferenceConstants and Data TypesGraphics Client ObjectGraphics Client Attributes    Functions+Creating and Disposing of a Graphics ClientGXNewGraphicsClientGXDisposeGraphicsClient2Allocating and Disposing of a Graphics Client HeapGXEnterGraphicsGXExitGraphics&Working With Multiple Graphics ClientsGXGetGraphicsClientGXGetGraphicsClientsGXSetGraphicsClientLoading and Unloading Objects GXLoadShape
  7. GXUnloadShape GXLoadStyle
  8. GXUnloadStyle    GXLoadInk GXUnloadInkGXLoadTransformGXUnloadTransformGXLoadColorSetGXUnloadColorSetGXLoadColorProfileGXUnloadColorProfile    GXLoadTag GXUnloadTag*
  9. Summary of QuickDraw GX Memory ManagementErrors, Warnings, and Notices1
  10. About QuickDraw GX Errors, Warnings, and Notices9Table 3-1    QuickDraw GX execution problem types(continued)dFigure 3-1    Complementary QuickDraw GX and application-supplied error, warning, and notice managementFTable 3-2    QuickDraw GX debugging and non-debugging versions(continued)GFigure 3-2    The relationship of the debugging and non-debugging versionsNon-debugging VersionDebugging VersionQuickDraw GX Errors)Table 3-3    Error number summary(continued)!Table 3-4    Fatal errors(continued)$Table 3-5    Internal errors(continued)'Table 3-6    Font scaler errors(continued)(Table 3-7    Font manager errors(continued)'Table 3-8    Recoverable errors(continued)*Table 3-9    Bad parameters errors(continued)8Table 3-10    Wrong type or bad reference errors(continued),Table 3-11    Type Validation errors(continued)1Table 3-12    Structure validation errors(continued)2Table 3-13    All object validation errors(continued)2Table 3-14    Implementation limits errors(continued)QuickDraw GX Warnings,Table 3-15    Warning number summary(continued);Table 3-16    Stack underflow and overflow warnings(continued)ATable 3-17    Cannot perform requested operation warnings(continued)2Table 3-18    Result out of range warnings(continued)5Table 3-19    Parameter out of range warnings(continued)0Table 3-20    Restricted access warnings(continued)+Table 3-21    Invalid data warnings(continued)7Table 3-22    Cannot perform operation warnings(continued)ITable 3-23    Shape does not have assumed characteristic warnings(continued)0Table 3-24    Unexpected result warnings(continued)&Table 3-25    Storage warnings(continued)*Table 3-26    Font scaler warnings(continued)$Table 3-27    Other warnings(continued)QuickDraw GX Notices+Table 3-28    Notice number summary(continued)Table 3-29    Notices(continued)$
  11. Using Errors, Warnings, and Notices0Obtaining QuickDraw Errors, Warnings, or NoticesAFigure 3-3    Obtaining the first and last posted QuickDraw GX error9Listing 3-1    Obtaining the first QuickDraw GX posted error>Listing 3-2    Obtaining the first and last QuickDraw GX warning DListing 3-3    Obtaining the first and last QuickDraw GX posted notices:Changing the QuickDraw GX Error, Warning, or Notice Posted2Listing 3-4    Changing the QuickDraw GX error posted*Ignoring QuickDraw GX Warnings and NoticesdFigure 3-4    Adding and removing warnings and notices from the ignore warning and ignore notice stacks/Installing an Error, Warning, or Notice Handler2Figure 3-5    Enabling and disabling an error handler5Listing 3-5    An application-supplied error handler (I)>Listing 3-6    Using multiple application-supplied error handlers4QuickDraw GX Errors, Warnings, and Notices Reference
  12. Data TypesQuickDraw GX Errors'Application-Supplied Handler for ErrorsQuickDraw GX Warnings)Application-Supplied Handler for WarningsQuickDraw GX Notices(Application-Supplied Handler for Notices    FunctionsError Posting and HandlingGXGetGraphicsErrorGXPostGraphicsErrorGXGetUserGraphicsErrorGXSetUserGraphicsErrorWarning Posting and HandlingGXGetGraphicsWarningGXPostGraphicsWarningGXGetUserGraphicsWarningGXSetUserGraphicsWarningGXIgnoreGraphicsWarningGXPopGraphicsWarningNotice Posting and HandlingGXGetGraphicsNoticeGXPostGraphicsNoticeGXGetUserGraphicsNoticeGXSetUserGraphicsNoticeGXIgnoreGraphicsNoticeGXPopGraphicsNoticeApplication-Supplied FunctionsMyUserGraphicsErrorMyUserGraphicsWarningMyUserGraphicsNotice(Summary of Errors, Warnings, and NoticesQuickDraw GX Debugging,About the QuickDraw GX Debugging Environment1Figure 4-1    The QuickDraw GX debugging environmentQuickDraw GX Debugging Version*QuickDraw GX Errors, Warnings, and Notices8Application-Supplied Error, Warning, and Notice HandlersThe Drawing Error FunctionValidation FunctionsMacsBug and GraphicsBug,Using the QuickDraw GX Debugging EnvironmentAnalyzing Drawing Problems/Table 4-1    QuickDraw GX drawing process sequence.Table 4-2    Shape type drawing errors(continued))Table 4-3    Style drawing errors(continued)'Table 4-4    Ink drawing errors(continued)-Table 4-5    Transform drawing errors(continued)-Table 4-6    View port drawing errors(continued)/Table 4-7    View device drawing errors(continued)Using Validation Functions1Validating Types, Structures, and Internal CachesETable 4-8    Public and internal validation mode option flags(continued)MTable 4-9    Type, structure, and all object validation level options(continued)/Table 4-10    Memory validation options(continued)+Validating Specific Objects and All Objects(Analyzing the Cause of Validation ErrorsXListing 4-1    Determining the function and parameter that caused the last validation error8Distinguishing between Application and QuickDraw GX BugsDetecting Corrupted ObjectsInstalling a Debugging FunctionDebugging with GraphicsBug8Table 4-11    GraphicsBug commands and responses(continued)!
  13. QuickDraw GX Debugging ReferenceConstants and Data TypesDrawing ErrorsValidation LevelGraphicsBug Parameters    FunctionsDrawing ErrorsGXGetShapeDrawError
  14. ValidationGXSetValidationGXGetValidationGXGetValidationError"Specific and All Object ValidationGXValidateShapeGXValidateStyle
  15. GXValidateInkGXValidateTransformGXValidateColorSetGXValidateColorProfile
  16. GXValidateTagGXValidateViewDeviceGXValidateViewPortGXValidateViewGroupGXValidateGraphicsClient
  17. GXValidateAllDebugging Utility FunctionsGXGetUserGraphicsDebugGXSetUserGraphicsDebug!GXGetGraphicsBugParametersPointer"
  18. Summary of QuickDraw GX DebuggingCollection ManagerAbout the Collection ManagerCollection Objects Figure 5-1    The collection objectCollection ItemsFigure 5-2    The collection itemCollection Attributes2Figure 5-3    Editing attributes in a collection item'Methods of Identifying Collection Items Figure 5-4    Items in a collectionUsing the Collection Manager2Determining if the Collection Manager is Available%Creating or Disposing of a CollectionCloning or Copying a Collection/Changing the Default Attributes of a Collection;Listing 5-1    Changing the default attributes of a collectionAdding Items to a Collection(Listing 5-2    Adding items to a collectionBListing 5-3    Adding items with variable-length data to a collection+Determining the Collection Index of an Item,Listing 5-4    Determining the index of an item%Determining the Tag and ID of an ItemHListing 5-5    Determining the tag and ID of an item given the item’s index6Determining the Size of an Item’s Variable-Length DataBListing 5-6    Determining the size of an item’s variable-length data-Getting and Setting the Attributes of an Item/Listing 5-7    Examining the attributes of an itemEListing 5-8    Setting the lock and persistence bit attribute of an itemReplacing Items in a Collection-Listing 5-9    Replacing an item in a collection5Listing 5-10    Replacing an item using the item’s index Removing Items From a Collection-Listing 5-11    Removing an item in a collection4Listing 5-12    Removing an item using the item’s index=Listing 5-13    Removing multiple items with specific attributes0Retrieving the Variable-Length Data From an Item=Listing 5-14    Retrieving the variable-length data from an itemTListing 5-15    Retrieving the variable-length data from an item using the item’s indexaListing 5-16    Retrieving the variable-length data from an item using the tag and tag list position-Examining the Collection Tags of a Collection*Listing 5-17    Counting tags in a collection(Flattening and Unflattening a Collection!Listing 5-18    Flattening procedure0Listing 5-19    The FlattenCollectionToHdl functionQListing 5-20    A possible implementation of the UnflattenCollectionFromHdl function8Reading Collections From and Writing Collections to DiskAListing 5-21    Flattening a collection to a disk file as a resourceBListing 5-22    Flattening a collection to a data fork of a disk fileEListing 5-23    Unflattening a collection from a disk file as a resourceHListing 5-24    Unflattening a collection from the data fork of a disk file/Reading a Collection From a Collection Resource!Installing an Exception ProcedureCollection Manager Reference
  19. Data TypesCollection ObjectsCollection TagsOptional Return Value ConstantsAttributes MasksAttribute Bit NumbersAttribute Bit Masks    Functions,Creating and Disposing of Collection Objects
  20. NewCollectionDisposeCollection&Cloning and Copying Collection ObjectsCloneCollectionCountCollectionOwnersCopyCollection<Getting and Setting the Exception Procedure for a CollectionGetCollectionExceptionProcSetCollectionExceptionProc;Getting and Setting the Default Attributes for a CollectionGetCollectionDefaultAttributesSetCollectionDefaultAttributes*Adding and Replacing Items in a CollectionAddCollectionItemReplaceIndexedCollectionItem Removing Items From a CollectionRemoveCollectionItemRemoveIndexedCollectionItemPurgeCollectionPurgeCollectionTagEmptyCollectionCounting Items in a CollectionCountCollectionItemsCountTaggedCollectionItems0Retrieving the Variable-Length Data From an ItemGetCollectionItemGetIndexedCollectionItemGetTaggedCollectionItem+Getting Information About a Collection ItemGetCollectionItemInfoGetIndexedCollectionItemInfoGetTaggedCollectionItemInfoEditing Item AttributesSetCollectionItemInfoSetIndexedCollectionItemInfo)Getting Information About Collection TagsCollectionTagExistsCountCollectionTagsGetIndexedCollectionTag(Flattening and Unflattening a CollectionFlattenCollectionFlattenPartialCollectionUnflattenCollection-Working With Macintosh Memory Manager HandlesAddCollectionItemHdlReplaceIndexedCollectionItemHdlGetCollectionItemHdlGetIndexedCollectionItemHdlFlattenCollectionToHdlUnflattenCollectionFromHdl'Reading Collections From Resource FilesGetNewCollectionApplication-Defined Functions
  21. MyFlattenProcMyExceptionProc    ResourcesThe Collection Resource1Listing 5-25    A Rez template for a 'cltn' resource"
  22. Summary of the Collection ManagerMessage ManagerAbout the Message Manager"Message Manager Terms and Concepts'Benefits of Message-Based Architectures InheritanceUsing the Message Manager Listing 6-1     Listing 6-2     Listing 6-3     Listing 6-4    Custom DispatchingCleanup FunctionSummary of Message DispatchingMessage Manager Reference    Constants Message Manager Gestalt Selector"Message Manager Error Result CodesMessage Manager Class OptionsMessage Manager Top HandlerMessage Manager TrapMessage Manager Selectors
  23. Data Types
  24. Message ClassMessage HandlerMessage ObjectMessage OverrideMessage Override TableMessage Override Table PointerOS Type SignatureMessage Stack MarkMessage Handler Setup Procedure!Message Class Exception ProcedureMessage Object Loop ProcedureMessage Handler Loop ProcedureMessage Globals Init ProcedureMacrosSendObjectMessageGlueSendMessageGlueForwardMessageGlueForwardThisMessageGlue    Functions,Message Class Management Interface FunctionsNewMessageClass DisposeMessageClassCloneMessageClassCountMessageClassOwnersNewDerivedMessageClassSetMessageClassDispatchProcSetMessageClassHandlerSetupProc SetMessageClassHandlerReturnProcSetMessageClassExceptionProcGetMessageClassRefConSetMessageClassRefConNewMessageHandlerRemoveMessageHandlerInstallMessageHandlerOverrideRemoveMessageHandlerOverrideGetMessageHandlerDataSetMessageHandlerDataDisableMessageHandlerEnableMessageHandlerMessageHandlerDisabledCountMessageHandlersGetMessageHandlerAtGetMessageHandlerSignatureFindMessageHandlerGetMessageHandlerPositionForEachMessageHandlerDoInsertMessageHandlerRemoveMessageHandlerDeleteMessageHandlerAtInstallMessageHandlerOverrideRemoveMessageHandlerOverride#Message Object Management FunctionsNewMessageObjectDisposeMessageObjectCloneMessageObjectCountMessageObjectOwnersGetMessageObjectRefConSetMessageObjectRefConGetMessageObjectClassCountMessageObjectsForEachMessageObjectsDo-Message Target Management Interface FunctionsGetMessageTargetSetMessageTargetMarkMessageStackUnwindMessageStack#Message Handler Interface FunctionsGetMessageHandlerCountMessageHandlerInstancesGetMessageHandlerClassContextSetMessageHandlerClassContext GetMessageHandlerInstanceContext SetMessageHandlerInstanceContextNewMessageGlobalsDisposeMessageGlobals-Functions for Sending and Forwarding MessagesSendObjectMessageSendObjectMessageToStartObjectMessageAt SendMessage
  25. SendMessageToStartMessageAtForwardMessageForwardThisMessageSummary of the Message ManagerQuickDraw GX Stream FormatAbout QuickDraw GX Data Streams
  26. Attributes
  27. Extensible
  28. Byte OrientedMinimized DataData Compression,Table 7-1    Stream data compression(continued)Shape Oriented3Figure 7-1    Basic components of a QuickDraw GX shape
  29. Stream Design3Figure 7-2    The flattened shape data stream sequence=Figure 7-3    Basic components of a data stream header or objectOperation Opcode Byte2Figure 7-4    The format of the operation opcode byteOperation OpcodeTable 7-2    Operation opcodes Record SizeData Opcode Byte2Figure 7-5    The format of the data type opcode byteCompression Type*Table 7-3    Compression constants(continued)"Data Type Opcodes for a New Object9Table 7-4    Data type constants for a new object(continued)*Data Type Opcodes to Modify a Shape Object?Table 7-5    Data type opcodes to modify a shape object(continued)*Data Type Opcodes to Modify a Style Object?Table 7-6    Data type opcodes to modify a style object(continued).Data Type Opcodes to Modify a Color Set ObjectCTable 7-7    Data type opcodes to modify a color set object(continued)2Data Type Opcodes to Modify a Color Profile ObjectGTable 7-8    Data type opcodes to modify a color profile object(continued).Data Type Opcodes to Modify a Transform ObjectCTable 7-9    Data type opcodes to modify a transform object(continued)BFigure 7-6    The components of a header or object in the data streamData$Omit Byte Masks and Omit Byte Shifts<Figure 7-7    Omit byte relationship with the data that followsQTable 7-10    Constants from the gxOmitTextMask and the gxOmitTextShift enumerations-Figure 7-8    Select the bits from the omit byteQFigure 7-9    Compare the bits selected and shifted with the compression enumerationHTable 7-11    Correlation between gxOmitTaxtMask and the GXNewText function8Listing 7-1    Determining if position x is byte compressed Header DataNew Shape Object DataModified Shape Object DataNew Style Object DataModified Style Object DataNew Ink Object DataNew Object Transform Data1Table 7-12    Transformation bytes format(continued)Modified Transform Object DataNew Color Profile Object Data"Modified Color Profile Object DataModified Color Set Object DataNew Tag Object DataNew Bit Image Object Data(Table 7-13    Bit image compression opcodesNew Font Name DataNew Trailer Object Data0About Print Files and Portable Digital DocumentsFigure 7-10    Print file formatPortable Digital Document 
  30. Using QuickDraw GX Data Streams"Flattening shapes with GraphicsBugLListing 7-2    A GraphicsBug annotation of the data stream of a flattened shape.Analyzing the Data Streams of Flattened Shapes$Creating a Picture with Seven Shapes'Listing 7-3    A picture with seven shapes'Figure 7-11    A picture with seven shapes Analyzing a Flattened Line Shape Figure 7-12    The line shape drawn4Listing 7-4    GraphicsBug analysis of a flattened lineKTable 7-14    Analysis of the data stream of a flattened line shape(continued)%Analyzing a Flattened Rectangle Shape%Figure 7-13    The rectangle shape drawn?Listing 7-5    GraphicsBug analysis of a flattened rectangle shapePTable 7-15    Analysis of the data stream of a flattened rectangle shape(continued)!Analyzing a Flattened Curve Shape!Figure 7-14    The curve shape drawn;Listing 7-6    GraphicsBug analysis of a flattened curve shapeLTable 7-16    Analysis of the data stream of a flattened curve shape(continued) Analyzing a Flattened Path Shape Figure 7-15    The path shape drawn:Listing 7-7    GraphicsBug analysis of a flattened path shapeKTable 7-17    Analysis of the data stream of a flattened path shape(continued) Analyzing a Flattened Text Shape Figure 7-16    The text shape drawn:Listing 7-8    GraphicsBug analysis of a flattened text shapeKTable 7-18    Analysis of the data stream of a flattened text shape(continued)#Analyzing a Flattened Polygon Shape#Figure 7-17    The polygon shape drawn=Listing 7-9    GraphicsBug analysis of a flattened polygon shapeMTable 7-19    Analysis of the data stream of a flattened polgon shape(continued)"Analyzing a Flattened Bitmap Shape"Figure 7-18    The bitmap shape drawn=Listing 7-10    GraphicsBug analysis of a flattened bitmap shapeCTable 7-20    Analysis of the data stream of a bitmap shape(continued) Obtaining Data from a Print FileQListing 7-11    Obtaining the page count from a Portable Digital Document print file#QuickDraw GX Data Streams ReferenceOpcode Constants and Data TypesOperation OpcodesData Type OpcodesShape Data OpcodesStyle Data OpcodesColor Set Data OpcodesProfile Data OpcodesTransform Data OpcodesGeneric Data OpcodeInk Data OpcodesBit Image Compression OpcodesTwo Bit Compression ValuesFlatten Header Bytes/Style Object Omit Byte Constants and Data Types%Dash Style Omit Byte Masks and Shifts(Pattern Style Omit Byte Masks and Shifts%Join Style Omit Byte Masks and Shifts$Cap Style Omit Byte Masks and Shifts*Text Face Style Omit Byte Masks and Shifts%Face Layer Omit Byte Masks and Shifts-Ink Object Omit Byte Constants and Data Types!Colors Omit Byte Masks and Shifts#Transfer Omit Byte Masks and Shifts-Transfer Component Omit Byte Masks and Shifts/Shape Object Omit Byte Constants and Data Types%Path Shape Omit Byte Masks and Shifts'Bitmap Shape Omit Byte Masks and Shifts$Bit Image Omit Byte Masks and Shifts%Text Shape Omit Byte Masks and Shifts&Glyph Shape Omit Byte Masks and Shifts'Layout Shape Omit Byte Masks and Shifts(Picture Shape Omit Byte Masks and Shifts!QuickDraw GX Data Streams SummaryQuickDraw GX MathematicsAbout QuickDraw GX MathematicsNumber FormatsInteger8Table 8-1    QuickDraw GX integer number formats(continued) Fixed Point1Table 8-2    QuickDraw GX fixed point number formatsFloating PointMacros4Table 8-3    Macro number format conversions(continued)    Functions8Fixed Point Operations on Fixed, Long, and Fract Numbers&Fixed Point Operations on Wide NumbersVector OperationsCartesian and Polar Coordinates*Figure 8-1    Cartesian and polar coordinatesMapping Transformation MatrixFigure 8-2    Mapping operations)Figure 8-3    Transformation matrix elements>Figure 8-4    Transformation of a point the transformation matrixCFigure 8-5    The mapping of the point (x, y) to the transformed pointFigure 8-6    The identity matrixRandom Number GenerationLinear and Quadratic Equations Bit Analysis
  31. Using QuickDraw GX MathematicsInterconverting Number FormatsTransforming a Mapping%Translating a Mapping by an IncrementJFigure 8-7    Translating points of a mapping using the transformation matrix0Figure 8-8    Translating a mapping by an increment%Translating a Mapping to a New OriginZFigure 8-9    Translating a mapping by specifying its new origin in the transformation matrix>Figure 8-10    Translating a mapping by specifying its new originScaling a Mapping=Figure 8-11    Scaling a mapping using the transformation matrixFigure 8-12    Scaling a mappingSkewing a MappingGFigure 8-13    Skewing points of a mapping using the transformation matrixFigure 8-14    Skewing a mappingRotating a MappingHFigure 8-15    Rotating points of a mapping using the transformation matrixFigure 8-16    Rotating a mapping&Modifying the Perspective of a MappingRFigure 8-17    Modifying the perspective of a mapping using the transformation matrixResetting a Mapping7Listing 8-1    Rotating a given angle about a center point!Performing Fixed Point OperationsETable 8-4    QuickDraw and QuickDraw GX fixed point functions(continued)7Interconverting Between Cartesian and Polar Coordinates;Figure 8-18    Interconverting cartesian and polar coordinatesPerforming Vector Operations1Figure 8-19    Determining the magnitude of a vector"Shifting the Bits of a Wide NumberXListing 8-2    Using the WideShift function to create a fixed point VectorMultiply function`Listing 8-3    Using the WideShift function to create a multiplication routine for fixed point typeQListing 8-4    Using the WideShift function to create a fixed point division routineXListing 8-5    Using the WideShift function to create a second fixed point division routine2Determining the Highest Order Bit of a Wide NumberSListing 8-6    Using the WideShift function to create a pseudo floating point functionGenerating Random Numbers6Listing 8-7    Generating non-random integers 0 through 6MListing 8-8    Generating random integers 0 through 6 by correcting for roundingZListing 8-9    Generating random integers 0 through 6 by rewriting the FractMultiply functionAnalyzing the Bits in a Number"QuickDraw GX Mathematics ReferenceConstants and Data Types Number TypesNumber Type ValuesMacrosNumber Type Conversions FixedToFract FractToFixed
  32. FixedToInt
  33. IntToFixedff FixedToFloat FloatToFixedfl FractToFloat FloatToFract ColorToFract FractToColor0Rounding, Truncating, and Square Root Operations
  34. FixedRound
  35. FixedTruncateFixedSquareRoot    FunctionsFixed Point Operations
  36. FixedMultiply FixedDivideMultiplyDivide    MagnitudeFractSineCosineFractSquareRoot
  37. FractCubeRoot
  38. FractMultiply FractDivideWide Number OperationsWideAdd WideSubtract
  39. WideNegate    WideShift WideMultiply
  40. WideDivideWideWideDivideWideSquareRoot    WideScale WideCompareVector OperationsVectorMultiplyVectorMultiplyDivide0Cartesian and Polar Coordinate Point Conversions PolarToPoint PointToPolarMapping Operations
  41. CopyToMapping
  42. InvertMapping
  43. MapMapping MoveMapping
  44. MoveMappingToNormalizeMapping
  45. RotateMapping ScaleMapping ResetMapping SkewMapping    MapPointsRandom Number Generation
  46. RandomBits
  47. SetRandomSeed
  48. GetRandomSeedLinear and Quadratic Roots
  49. LinearRoot
  50. QuadraticRoot Bit AnalysisFirstBit#Summary of QuickDraw GX MathematicsGlossaryIndex